namespace Crux.Core.LangChain.Abstractions.Splitters.Text;
/// <summary>
/// 
/// </summary>
public interface ITextSplitter
{

    /// <summary>
    /// Divides a chunk of text into smaller chunks.
    /// </summary>
    /// <param name="text"></param>
    /// <returns></returns>
    public IReadOnlyList<string> SplitText(string text);
    /// <summary>
    /// 
    /// </summary>
    /// <param name="text"></param>
    /// <param name="cancellationToken"></param>
    /// <returns></returns>
    public Task<IReadOnlyList<string>> SplitTextAsync(string text, CancellationToken cancellationToken = default);
}